package com.qisu.model.packet;

import com.qisu.enums.ChargeMethod;
import com.qisu.enums.ShowState;

/**
 * 状态包用结构
 *
 * @author alsan
 *
 */
public class ChargeStatusPacket {
	// @formatter:off

	// 记录ID，HK5700_ID
	private int _id;
	public int getId() { return _id; }
	public void setId(int id) { _id = id; }

	// 订单ID，ORDER_NO
	private String orderId;
	public String getOrderId() {
		return orderId;
	}
	public void setOrderId(String orderId) {
		this.orderId = orderId;
	}

	// 厂家ID，FACTORY_NO
//	private String _factoryId;
//	public String getFactoryId() { return _factoryId; }
//	public void setFactoryId(String factoryId) { _factoryId = factoryId; }

	// 桩序列号，SN9 
	private String _pileSerial;
	public String getPileSerial() { return _pileSerial; }
	public void setPileSerial(String pileSerial) { _pileSerial = pileSerial; }

	// 枪编号，GUN_CHARGE
	private int _gunNo;
	public int getGunNo() { return _gunNo; }
	public void setGunNo(int gun) { _gunNo = gun; }

	// 充电启动时间，CHARGE_START 
	private String _startChargeTime;
	public String getStartChargeTime() { return _startChargeTime; }
	public void setStartChargeTime(String startChargeTime) { _startChargeTime = startChargeTime; }

	// 电表当前总电量，CHARGE_CUR_TOTAL 
	private int _accumulatedMeterReading;
	public int getAccumulatedMeterReading() { return _accumulatedMeterReading; }
	public void setAccumulatedMeterReading(int accumulatedMeterReading) { _accumulatedMeterReading = accumulatedMeterReading; }

	// 当前费率，CUR_FEE
//	private int _feeRate;
//	public int getFeeRate() { return _feeRate; }
//	public void setFeeRate(int feeRate) { _feeRate = feeRate; }

	// 输入交流电压（三相平均），V_AC_VALUE 
	private int _inputCurrentVoltage;
	public int getInputCurrentVoltage() { return _inputCurrentVoltage; }
	public void setInputCurrentVoltage(int inputCurrentVoltage) { _inputCurrentVoltage = inputCurrentVoltage; }

	// 输入交流电流（三相平均），A_AC_VALUE 
	private int _inputCurrentAmpere;
	public int getInutCurrentAmpere() { return _inputCurrentAmpere; }
	public void setInputCurrentAmpere(int inputCurrentAmpere) { _inputCurrentAmpere = inputCurrentAmpere; }

	// 充电模式，CHARGE_MODE 
	private ChargeMethod _pileChargeMode;
	public ChargeMethod getPileChargeMode() { return _pileChargeMode; }
	public void setPileChargeMode(ChargeMethod pileChargeMode) { _pileChargeMode = pileChargeMode; }

	// 当次已充电量，CHARGE_ELE_QUANTITY 
	private int _chargedQualityInDegree;
	public int getChargedQualityInDegree() { return _chargedQualityInDegree; }
	public void setChargedQualityInDegree(int chargedQualityInDegree) { _chargedQualityInDegree = chargedQualityInDegree; }

	// 当次已充时间，CHARGE_TIME
	private int _chargedTimeInSecond;
	public int getChargedTimeInSecond() { return _chargedTimeInSecond; }
	public void setChargedTimeInSecond(int chargedTimeInSecond) { _chargedTimeInSecond = chargedTimeInSecond; }

	// 当次已充金额，NEED_MONEY 
//	private int _paymentRequiredInCent;
//	public int getPaymentRequiredInCent() { return _paymentRequiredInCent; }
//	public void setPaymentRequiredInCent(int paymentRequiredInCent) { _paymentRequiredInCent = paymentRequiredInCent; }

	// 当次已充SOC，CHARGED_SOC 
//	private int _chargedSOCInPercentage;
//	public int getChargedSOCInPercentage() { return _chargedSOCInPercentage; }
//	public void setChargedSOCInPercentage(int chargedSOCInPercentage) { _chargedSOCInPercentage = chargedSOCInPercentage; }

//	// 枪插枪状态，GUN_STATUS  
//	private GunConnectState gunConnectionStatus;
//	public GunConnectState getGunConnectionStatus() { return gunConnectionStatus; }
//	public void setGunConnectionStatus(GunConnectState gunConnectionStatus) { this.gunConnectionStatus = gunConnectionStatus; }
//
//	// 枪充电状态，CHARGE_STATUS 
//	private GunStatus _chargeStatus;
//	public GunStatus getChargeStatus() { return _chargeStatus; }
//	public void setChargeStatus(GunStatus chargeStatus) { _chargeStatus = chargeStatus; }

	//枪工作状态   
//	private WorkingState _workingStatus;
//	public WorkingState getWorkingStatus() {
//		return _workingStatus;
//	}
//	public void setWorkingStatus(WorkingState _workingStatus) {
//		this._workingStatus = _workingStatus;
//	}

	//桩状态
//	private PileState _pileState;
//	public PileState getPileState() {
//		return _pileState;
//	}
//	public void setPileState(PileState _pileState) {
//		this._pileState = _pileState;
//	}

	//
	private ShowState showState;
	public ShowState getShowState() {
		return showState;
	}
	public void setShowState(ShowState showState) {
		this.showState = showState;
	}

	// 枪充电模式，GUN_MODE 
//	private ChargeMode _gunChargeMode;
//	public ChargeMode getGunChargeMode() { return _gunChargeMode; }
//	public void setGunChargeMode(ChargeMode gunChargeMode) { _gunChargeMode = gunChargeMode; }

	// V_DC_VALUE，枪直流输出电压  
	private int _dcOutputVoltage;
	public int getDcOutputVoltage() { return _dcOutputVoltage; }
	public void setDcOutputVoltage(int dcOutputVoltage) { _dcOutputVoltage = dcOutputVoltage; }

	// A_DC_VALUE，枪直流输出电流
	private int _dcOutputAmpere;
	public int getDcOutputAmpere() { return _dcOutputAmpere; }
	public void setDcOutputAmpere(int dcOutputAmpere) { _dcOutputAmpere = dcOutputAmpere; }

	// BMS_NEED_V，枪BMS需求电压 
	private int _bmsVoltageRequired;
	public int getBmsVoltageRequired() { return _bmsVoltageRequired; }
	public void setBmsVoltageRequired(int bmsVoltageRequired) { _bmsVoltageRequired = bmsVoltageRequired; }

	// BMS_NEED_A，枪BMS需求电流
	private int _bmsAmpereRequired;
	public int getBmsAmpereRequired() { return _bmsAmpereRequired; }
	public void setBmsAmpereRequired(int bmsAmpereRequired) { _bmsAmpereRequired = bmsAmpereRequired; }

	// BMS_MONITOR_V，枪BMS监测电压
//	private int _bmsMonitoredVoltage;
//	public int getBmsMonitoredVoltage() { return _bmsMonitoredVoltage; }
//	public void getBmsMonitoredVoltage(int bmsMonitoredVoltage) { _bmsMonitoredVoltage = bmsMonitoredVoltage; }

	// BMS_MONITOR_A，枪BMS 监测电流
//	private int _bmsMonitoredAmpere;
//	public int getBmsMonitoredAmpere() { return _bmsMonitoredAmpere; }
//	public void setBmsMonitoredAmpere(int bmsMonitoredAmpere) { _bmsMonitoredAmpere = bmsMonitoredAmpere; }

	// BMS_TYPE，枪电池类型 
//	private int _bmsBatteryTechnology;
//	public int getBmsBatteryTechnology() { return _bmsBatteryTechnology; }
//	public void setBmsBatteryTechnology(int bmsBatteryTechnology) { _bmsBatteryTechnology = bmsBatteryTechnology; }

	// BMS_VALUMN，枪电池容量
//	private int _bmsBatteryVolume;
//	public int getBmsBatteryVolume() { return _bmsBatteryVolume; }
//	public void setBmsBatteryVolume(int bmsBatteryVolume) { _bmsBatteryVolume = bmsBatteryVolume; }

	// BMS_NOMINAL_V，枪电池额定电压
//	private int _bmsBatteryDesignedVolume;
//	public int getBmsBatteryDesignedVolume() { return _bmsBatteryDesignedVolume; }
//	public void setBmsBatteryDesignedVolume(int bmsBatteryDesignedVolume) { _bmsBatteryDesignedVolume = bmsBatteryDesignedVolume; }

	// CURR_SOC，枪当前SOC
	private int _currSOC;
	public int getCurrSOC() { return _currSOC; }
	public void setCurrSOC(int currSOC) { _currSOC = currSOC; }

	// REMAIN_TIME，枪预计剩余充电时间
	private int _chargingRemain;
	public int getChargingRemain() { return _chargingRemain; }
	public void setChargingRemain(int chargingRemain) { _chargingRemain = chargingRemain; }

	// BMS_MIN_NO，枪最低单体电池电压编号
//	private int _bmsLowestBatterySerial;
//	public int getBmsLowestBatterySerial() { return _bmsLowestBatterySerial; }
//	public void setBmsLowestBatterySerial(int bmsLowestBatterySerial) { _bmsLowestBatterySerial = bmsLowestBatterySerial; }

	// BMS_MIN_V，枪最低单体电池电压
//	private int _bmsLowestBatteryVoltage;
//	public int getBmsLowestBatteryVoltage() { return _bmsLowestBatteryVoltage; }
//	public void setBmsLowestBatteryVoltage(int bmsLowestBatteryVoltage) { _bmsLowestBatteryVoltage = bmsLowestBatteryVoltage; }

	// BMS_MAX_NO，枪最高单体电池电压编号
//	private int _bmsHighestBatterySerial;
//	public int getBmsHighestBatterySerial() { return _bmsHighestBatterySerial; }
//	public void setBmsHighestBatterySerial(int bmsHighestBatterySerial) { _bmsHighestBatterySerial = bmsHighestBatterySerial; }

	// BMS_MAX_V，枪最高单体电池电压
//	private int _bmsHighestBatteryVoltage;
//	public int getBmsHighestBatteryVoltage() { return _bmsHighestBatteryVoltage; }
//	public void setBmsHighestBatteryVoltage(int bmsHighestBatteryVoltage) { _bmsHighestBatteryVoltage = bmsHighestBatteryVoltage; }

	// BMS_MIN_TEMP_NO，枪最低单体电池温度编号
//	private int _bmsLowestBatteryTemperatureSerial;
//	public int getBmsLowestBatteryTemperatureSerial() { return _bmsLowestBatteryTemperatureSerial; }
//	public void setBmsLowestBatteryTemperatureSerial(int bmsLowestBatteryTemperatureSerial) { _bmsLowestBatteryTemperatureSerial = bmsLowestBatteryTemperatureSerial; }

	// BMS_MIN_TEMP，枪最低单体电池温度
//	private int _bmsLowestBatteryTemperature;
//	public int getBmsLowestBatteryTemperature() { return _bmsLowestBatteryTemperature; }
//	public void setBmsLowestBatteryTemperature(int bmsLowestBatteryTemperature) { _bmsLowestBatteryTemperature = bmsLowestBatteryTemperature; }

	// BMS_MAX_TEMP_NO，枪最高单体电池温度编号
//	private int _bmsHighestBatteryTemperatureSerial;
//	public int getBmsHighestBatteryTemperatureSerial() { return _bmsHighestBatteryTemperatureSerial; }
//	public void setBmsHighestBatteryTemperatureSerial(int bmsHighestBatteryTemperatureSerial) { _bmsHighestBatteryTemperatureSerial = bmsHighestBatteryTemperatureSerial; }

	// BMS_MAX_TEMP，枪最高单体电池温度
//	private int _bmsHighestBatteryTemperature;
//	public int getBmsHighestBatteryTemperature() { return _bmsHighestBatteryTemperature; }
//	public void setBmsHighestBatteryTemperature(int bmsHighestBatteryTemperature) { _bmsHighestBatteryTemperature = bmsHighestBatteryTemperature; }

	// BMS_ERR，枪BMS当前故障码
//	private int _bmsErrorNo;
//	public int getBmsErrorNo() { return _bmsErrorNo; }
//	public void setBmsErrorNo(int bmsErrorNo) { _bmsErrorNo = bmsErrorNo; }

	// BMS_VIN，枪BMSVIN码
//	private String _bmsVIN;
//	public String getBmsVIN() { return _bmsVIN; }
//	public void setBmsVIN(String bmsVIN) { _bmsVIN = bmsVIN; }

	// STOP_CAUSE，停机原因
//	private int _stopReason;
//	public int getStopReason() { return _stopReason; }
//	public void setStopReason(int stopReason) { _stopReason = stopReason; }
	
	private int increaseQuantity;
	public int getIncreaseQuantity() {
		return increaseQuantity;
	}
	public void setIncreaseQuantity(int increaseQuantity) {
		this.increaseQuantity = increaseQuantity;
	}
	
	private int chargePrice;
	public int getChargePrice() {
		return chargePrice;
	}
	public void setChargePrice(int chargePrice) {
		this.chargePrice = chargePrice;
	}
	
	private int servicePrice;
	public int getServicePrice() {
		return servicePrice;
	}
	public void servicePrice(int serviceFee) {
		this.servicePrice = serviceFee;
	}
	
}
